Method and system for datalink ground station selection

ABSTRACT

A method for selecting a ground station for communication with an aerial vehicle is provided. The method comprises receiving at an aerial vehicle one or more messages from one or more ground stations. The method includes storing one or more signal strength values corresponding to the one or more received messages in a data structure for each respective one or more ground stations received during a predefined time period. The data structures for each of the one or more ground stations is updated. The average of the signal strength values stored in each data structure is calculated. The method compares the average signal strength of each of the one or more ground stations and selects which ground station the aerial vehicle is to communicate with based on predefined criteria.

BACKGROUND

Many aircraft are equipped with air-ground data communication equipmentfor data communication with radios on the ground. These radios on theground are known as ground stations. Typically, one frequency is used bymost of the ground stations in a geographic region such as North Americaor Europe. The network design requires the avionics to select with whichground station to communicate. The ground station selection logic in theavionics evaluates several parameters including signal strength andlocation to select which ground station to use.

Usually the ground station selection logic has a fixed signal strengththreshold. If the currently selected ground station's signal strengthgoes below this threshold, the selection logic triggers a handover toanother ground station, if one is available. Typically, current groundstation selection logic uses only the signal strength of the lastmessage received in determining if the signal strength is belowthreshold. Field data shows that signal strength can vary considerably,up to 20 dB, from message to message. If the last message had anunusually low signal strength, this can cause the avionics to handoff toa different ground station when it should not. Therefore, using just thelast value for signal strength creates additional switching andoverhead, thus reducing the efficiency of the network.

Additionally, the signals in such networks are aperiodic, meaning thereis not a consistent number of signals received in any given period oftime. However, typically there should be a signal every 2 minutes andfrequently there are signals more often. The time varying nature of themessages affects attempts to filter or average the data.

Accordingly, there is a need for improved ground station selection logicwhich overcomes the foregoing deficiencies.

SUMMARY

In one embodiment, a method for selecting a ground station forcommunication with an aerial vehicle is provided. The method comprisesreceiving at an aerial vehicle one or more messages from one or moreground stations. One or more signal strength values corresponding to theone or more received messages are stored in a data structure for eachrespective one or more ground stations received during a predefined timeperiod. The method comprises updating the data structure for each of theone or more ground stations. The average of the signal strength valuesstored in each data structure is calculated to determine an averagesignal strength, and the average signal strength of each of the one ormore ground stations is compared. The method further comprises selectingwhich ground station the aerial vehicle is to communicate with based onpredefined criteria.

DRAWINGS

Features of the present invention will become apparent to those skilledin the art from the following description with reference to thedrawings. Understanding that the drawings depict only typicalembodiments of the invention and are not therefore to be consideredlimiting in scope, the invention will be described with additionalspecificity and detail through the use of accompanying drawings, inwhich:

FIG. 1 illustrates an aircraft in communication with a plurality ofground stations over the course of flight;

FIG. 2 is a graph of signal strength as a function of time for twoground stations;

FIG. 3 is a block diagram of one embodiment of an avionics communicationsystem in an aircraft;

FIG. 4 is a flowchart depicting one embodiment of a method for an aerialvehicle to select a ground station; and

FIGS. 5 and 6 are flowcharts depicting methods for updating a datastructure.

DETAILED DESCRIPTION

In the following detailed description, embodiments are described insufficient detail to enable those skilled in the art to practice theinvention. It is to be understood that other embodiments may be utilizedwithout departing from the scope of the present invention. The followingdetailed description is, therefore, not to be taken in a limiting sense.

The present invention includes a method, system, and computer programproduct for selecting a ground station for communication with an aerialvehicle when there are multiple ground stations in range. Which groundstation to communicate with is selected based on averaging a set ofreceived messages for each ground station and comparing the averages. Byaveraging the signal strength for a set of messages instead of comparingjust the last received message for each station, the avionics in theaerial vehicle will not initiate handovers as often.

Signal strength is a measurement of the magnitude of the transmitter'selectric field taken at the point of interest. In the present invention,“signal strength” or “signal strength value” generally refers to thestrength of the message an aerial vehicle receives from a groundstation. As used herein, “aerial vehicle” can include any aircraft suchas airplanes, helicopters, hot air balloons, and the like. The term“ground station” can include radio stations, air traffic control towers,cell towers, and the like. To achieve the best communication link, it istypically desired that an aerial vehicle use the ground station with thestrongest signal available. Signal strength varies for several reasons,including the distance between the vehicle and the ground station,transmitter power, altitude, conditions of the propagation path,destructive interference, and the like.

FIG. 1 illustrates an aircraft 100 in communication with a plurality ofground stations 120 ₁ through 120 _(N) over the course of flight. At onemoment during flight, aircraft 100 is at a location 110. While aircraft100 is at location 110, aircraft 100 is receiving messages 130 from aplurality of ground stations 120. Aircraft 100 may receive messages 130from all ground stations 120 or from a subset of ground stations 120.Messages 130 received may vary in strength. For example, as shown inFIG. 1, when aircraft 100 is at location 110, aircraft 100 is receivingmessages 130 ₁, 130 ₂, and 130 ₃ from ground stations 120 ₁, 120 ₂, and120 ₄, respectively. In this example, of the messages 130 received byaircraft 100, message 130 ₁ is the strongest. To have the most reliablepossible communications, it is desirable that aircraft 100 communicatewith the ground station from which aircraft 100 receives the strongestsignal. In this example, aircraft 100 would select ground station 120 ₁to communicate with since ground station 120 ₁ transmitted the strongestsignal, namely message 130 ₁.

At a later moment during flight, aircraft 100 is at a location 114. Atlocation 114, aircraft 100 receives messages from a different subset ofground stations 120 than at location 110. As shown in FIG. 1, whenaircraft 100 is at location 114, aircraft 100 is receiving messages 130₄, 130 ₅, 130 ₆, and 130 _(N) from ground stations 120 ₄, 120 ₃, 120 ₅,and 120 _(N), respectively. In this example, of the messages 130received by aircraft 100, message 130 ₆ is the strongest. At location114, it may be desirable for aircraft 100 to select, or handoff to,ground station 120 ₅ since ground station 120 ₅ is transmitting thestrongest signal.

Usually ground station selection logics have a fixed threshold forhandoffs. When the signal strength goes below the minimum thresholdvalue, the logic transfers the communications to another ground station.One advantage of selecting a ground station 120 based not solely onsignal strength is that it may reduce the number of handoffs during agiven communication. Reducing the number of handoffs results in lessoverhead and a more efficient network. Referring to FIG. 1, at leastonce during flight from location 110 to location 114, aircraft 100handed over communications from a previous ground station to a differentground station which had greater received signal strength. For example,at location 110, ground station 120 ₁ was being used, while at location114, ground station 120 ₅ is being used, thus there was at least onehandoff during flight.

The number of handoffs may be reduced by smoothing out any nulls orunusually low signals received from the ground stations 120. In oneembodiment, a number of consecutive signal strengths may be averaged foreach ground station 120. For example, the last four signals receivedfrom each ground station are averaged. However, any number of signalstrengths may be used. Averaging the signal strength of the last fourmessages produces a better indication of signal strength as comparedwith using only the signal strength of the last message received.However, the time period it took to receive these four signals may varyconsiderable. For example, it may have taken as long as eight minutes oras short as 0.5 seconds to receive the four messages. This potentialdisparity could give a very different indication of the desirability ofthat ground station.

In one embodiment, signal strengths may be averaged over a period oftime. In another embodiment, the number of samples averaged for eachground station varies based on the message traffic density of thatground station. Message traffic density is a measure of how manymessages are received per unit of time. In one embodiment, the number ofdata values used is adjusted so that the data used covers similar timeperiods regardless of message traffic density. Comparing ground stationswith data from similar time periods is a more reliable comparison thanonly comparing the last message received. This method of comparison isalso more reliable than comparing average signal strength from eachground station where the averages may be from different time periods.The time varying nature of the messages affects attempts to filter oraverage the data. Taking this varying nature into account would resultin a more accurate picture of the signal strength.

When the message traffic from a ground station is high, more data isused to calculate the average signal strength. For example, if fourmessages were being received per minute, then sixteen samples would beused to calculate the average signal strength for a four minute period.When the message traffic from the ground station is low, then less datais used to calculate the average signal strength. In the four minuteexample, if the message traffic density was one message per minute, thenfour samples could be used to calculate the average signal strength.Using this method eliminates the influence of message traffic densitywhen the ground station selection logic is comparing a ground stationwith low message traffic density to a ground station with high messagetraffic density.

FIG. 2 is a graph of signal strength as a function of time for twoground stations. The first ground station, corresponding to raw data 1,has high message traffic density. The second ground station,corresponding to raw data 2, has low message traffic density. In thisexample, ground station 2 is defined as every fourth signal transmittedby ground station 1. Because ground station 2 transmitted only a fourthof the total messages that ground station 1 transmitted, ground station2 has lower message traffic density than ground station 1.

FIG. 2 also depicts running average values of the signal strength forground stations 1 and 2, shown as triangles and squares, respectively.The graph also contains the time varying average for ground station 1 ascalculated in one embodiment of this invention, shown as asterisks. Ascan be seen in the graph, it is more accurate to compare the two groundstations using the time varying average than just the running average.

FIG. 3 is a block diagram of one embodiment of an avionics communicationsystem in an aircraft. System 300 includes a communications managementunit (CMU) 310 which communicates with a radio 312 to transmit andreceive signals as well as to implement the message traffic densitylevel. System 300 also includes one or more sensors 314 and one or moreonboard systems 316 coupled to CMU 310. Sensors 314, such as fuelconsumption sensors, altitude sensors, and the like provide data to CMU310 for transmission to a ground station 120. Similarly, onboard systems316, such as a Flight Management System (FMS), provide data to CMU 310for transmission to the ground station.

Radio 312 transmits data from CMU 310 to a ground station 120. Radio 312also provides data received from a ground station 120 to CMU 310. Inparticular, radio 312 includes a transmitter 318 operable to modulateand upconvert data from CMU 310 for transmission over a selected radiofrequency channel as known to one of skill in the art. Similarly,receiver 320 in radio 312 is operable to downconvert and demodulatereceived RF signals from a ground station 120 for processing by CMU 310as known to one of skill in the art. It is to be understood that,although transmitter 318 and receiver 320 are shown as separate devicesin FIG. 3, in some implementations, receiver 318 and transmitter 320 areintegrated into a single device, referred to as a transceiver. Inaddition, radio 312 measures the signal strength of signals receivedfrom ground stations 120 within range of radio 312. Radio 312 providesthe measured signal strength for each ground station 120 to CMU 310 foruse in selecting a ground station with which to communicate.

CMU 310 comprises a processing unit 308 and a memory 306. Processingunit 308 can be implemented using software, firmware, hardware, or anyappropriate combination thereof, as known to one of skill in the art. Byway of example and not by way of limitation, the hardware components caninclude one or more microprocessors, memory elements, digital signalprocessing (DSP) elements, interface cards, and other standardcomponents known in the art. Any of the foregoing may be supplementedby, or incorporated in, specially-designed application-specificintegrated circuits (ASIC) and field programmable gate arrays (FPGA). Inthis exemplary embodiment, processing unit 308 includes or functionswith software programs, firmware or computer readable instructions forcarrying out various methods, process tasks, calculations, and controlfunctions, used in calculating a message traffic density level forswitching ground stations. These instructions are typically tangiblyembodied on any appropriate medium used for storage of computer readableinstructions or data structures. In particular, in this embodiment, theinstructions are stored on memory 306.

The memory 306 can be implemented as any available media that can beaccessed by a general purpose or special purpose computer or processor,or any programmable logic device. Suitable processor-readable media mayinclude storage or memory media such as magnetic or optical media. Forexample, storage or memory media may include conventional hard disks,Compact Disk-Read Only Memory (CD-ROM), volatile or non-volatile mediasuch as Random Access Memory (RAM) (including, but not limited to,Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate (DDR)RAM, RAMBUS Dynamic RAM (RDRAM), Static RAM (SRAM), etc.), Read OnlyMemory (ROM), Electrically Erasable Programmable ROM (EEPROM), and flashmemory, etc. Suitable processor-readable media may also includetransmission media such as electrical, electromagnetic, or digitalsignals, conveyed via a communication medium such as a network and/or awireless link.

The processor 308 may be located on the aerial vehicle 100, at a centralcontrol station, or at any other suitable location. The processor 308may include avionics software. The processor 308 maintains a datastructure for each ground station 120 from which the aerial vehicle 100receives data. Processing unit 308 creates a data structure in memory306 to store signal strengths corresponding to the received messages. Anumber of signal strength samples corresponding to the received messagesfrom each ground station 120 are stored for a given period of time inmemory 306. Processing unit 308 updates the data structure in memory 306to include the signal strengths of new messages as they arrive and todelete the signal strengths of old messages as they become stale.

FIG. 4 is a flowchart depicting one embodiment of a method 400 for anaerial vehicle to select a ground station. In some embodiments, at leasta portion of method 400 is implemented in processor instructions storedon memory 306 and executed by processing unit 308. Method 400 begins atblock 410 with an aerial vehicle receiving messages from one or moreground stations. At block 415 a dummy variable, n, is set equal to 1.The integer n corresponds to the number of ground stations from whichthe aerial vehicle can receive messages. At block 420, the method 400enters a loop for each ground station n which culminates at block 460.At block 430, a data structure is created to store signal strengthscorresponding to the messages received by the aerial vehicle from theground stations. If a data structure for a ground station alreadyexists, a new data structure will not be created.

At block 432, a number of signal strengths are stored corresponding tothe messages received from the ground station. In one embodiment, thenumber of signal strengths to be stored will be based on a predeterminedtime period. The data structure contains the signal strength for eachmessage from its corresponding ground station received during thepredetermined time period. For example, a data structure could containsignal strengths only from messages received within the last fourminutes. The data structure can contain any number of samples, such asfour, sixteen, or any other number. In another embodiment, the number ofsignal strengths to be stored will be based on message traffic densityover a predetermined time period.

At block 440, method 400 updates the data structure. FIGS. 5 and 6 areflowcharts depicting methods 500 and 600 for updating a data structure.In FIG. 5, the method 500 queries whether ground station n has new dataat block 510. If ground station n does not have new data to add, method500 proceeds to block 530. If ground station n has new data to add,method 500 proceeds to block 520 then to block 530. The method 500queries whether a ground station n has stale data at block 530. Ifground station n does not have stale data, the method 500 proceeds toblock 550. If ground station n has stale data, method 500 proceeds toblock 540.

At block 520, new data is added. New data can include a single piece orseveral pieces of data. For example, if n=1 and the aerial vehicle hasjust received a message from the ground station designated as 1, thenthe method 500 has new data to add to that ground station's datastructure. Addition of data includes the signal strength of the receivedmessage. In one embodiment, each new data point has an associated timestamp so the method 500 can determine when the data point is stale. Inanother embodiment, the signal strength of each additional messagestored replaces the oldest stored signal strength in the data structure.

At block 540, stale data is deleted. Stale data can include a singlepiece or several pieces of data. In one embodiment, stale data isdefined as any data that is older than a predefined time period. When adata sample is older than a given time period, the data sample isdeleted and the number of data samples used in the average is decreaseduntil new data is received. For example, any signal strength datarecorded that is older than 10 minutes would be stale data. Once all thestale data has been deleted from the data structure, method 500 proceedsto block 550, where the number of data points in the data structure iscalculated.

FIG. 6 depicts one embodiment of a method 600 for updating a datastructure. At block 610 new data is added to the data structure forground station n. In one embodiment, all received messages' signalstrengths from the same time period are stored in the data structureregardless of message traffic density. At block 620, method 600 querieswhether message traffic density for the ground station is higher orlower than a given message traffic density level. In one embodiment, themessage traffic density level may be a single message traffic densityvalue (for example, 10 messages per minute). In another embodiment, themessage traffic density level may be a range of potential messagetraffic densities (for example, 8-12 messages per minute). If themessage traffic density for ground station n is different than themessage traffic density level, or outside the predetermined range,method 600 proceeds to block 650.

At block 650, the number of signal strength samples stored in the datastructure is adjusted based on message traffic density. In oneembodiment, if the message traffic density is high, more samples ofsignal strength are used. In another embodiment, if the message trafficdensity is low, less samples of signal strength are used. Adjusting thenumber of signal strength samples used based on message traffic densityin this manner gives a more accurate picture of the actual signalstrength at any given moment. After adjusting the number of signalstrength samples stored, the method proceeds to block 630.

Returning to block 620, if the message traffic density is at the messagetraffic density level or within the message traffic density range,method 600 proceeds to block 630. At block 630, the number of datapoints is calculated.

Returning to FIG. 4, once the data structure is updated at block 440,new averages of the signal strengths stored in the data structure forground station n are calculated at block 445. In one embodiment, theaverage may be weighted. In one embodiment, the average is stored in thedata structure. proceeds to block 450. Block 450 queries whether n isequal to the total of number ground stations in communication with theaerial vehicle. If no, method 400 proceeds to block 460, where n isincreased by 1. Then method 400 repeats the loop beginning at block 420for the next ground station. If, at block 450, n is equal to the totalnumber of ground stations in communication with the aerial vehicle,method 400 proceeds to block 470.

At block 470, the average signal strengths of each of the groundstations are compared. At block 472, a ground station is selected forcommunication with the aerial vehicle based on predefined criteria. Inone embodiment, the predefined criterion is to select the ground stationwith the highest average signal strength. If the aerial vehicle was notalready in communication with the ground station having the largestaverage signal strength, a handover is initiated to the ground stationthat does have the largest average signal strength. In anotherembodiment, the predefined criterion is to select the ground stationwith the largest average signal strength if it is larger than theaverage signal strength from the currently used ground station by asignal strength threshold value. If so, a handover is initiated. If noground station has average signal strength larger than the currentlyused ground station, a handover is not initiated.

In one embodiment, the processor 308 would periodically calculate andstore the average signal strength using the number of data samplesavailable during the time frame. In other words, method 400 would repeatstarting at block 415. At block 415, n is reset to 1. Once n is reset to1, method 400 returns to block 420 to repeat for each ground station.Initiation of repeating the loop for each ground station may betriggered by a period of time elapsing, after receiving a new message,after receiving every fourth new message, or the like.

Examples of information stored in a data structure are illustrated inTables 1 through 4. As can be seen in Table 1, ground stations can havedifferent message traffic densities. In Table 1, ground station 1 hassent 6 messages within the predefined time period. In this example, thepredefined time period before a data point becomes stale is set to tenminutes. Within the last ten minutes, the aerial vehicle has receivedsix messages from ground station 1, with signal strengths 1, 1, 2, 2, 1,and 2 dB in order from oldest to newest message received. These signalstrengths average to 1.5 dB. In comparison, ground station 2 has sentthree messages within the last ten minutes, and its average signalstrength is 0.3 dB. Ground station 3 has transmitted five signals withinthe last ten minutes, with an average of 4.6 dB. When these averages arecompared, the avionics determines that ground station 3 has the largestsignal strength. If the aerial vehicle is already in communication withground station 3 at the time of the comparison, the aerial vehicle willstay in communication with ground station 3. If the aerial vehicle isnot already in communication with ground station 3, the avionics willinitiate a handover to ground station 3.

TABLE 1 MESSAGE SIGNAL GROUND TRAFFIC STRENGTH AVERAGE STATION DENSITYDATA (dB) (dB) 1 6 1, 1, 2, 2, 1, 2 1.5 2 3 0, 1, 0 0.3 3 5 6, 5, 3, 5,4 4.6 4 . . . . . . . . . . . . n

Table 2 also depicts information stored in a data structure. Table 2 ishow Table 1 might look after the logic has updated the stored data andremoved two data points from ground station 1 because they have becomestale. Now ground station 1 has a message traffic density of four.However, the average signal strength for ground station 1 is still lessthan that for ground station 3, thus it is still preferred for theaerial vehicle to use ground station 3 for communications.

TABLE 2 MESSAGE SIGNAL GROUND TRAFFIC STRENGTH STATION DENSITY DATA (dB)AVERAGE (dB) 1 4 1, 1, 2, 2 1.5 2 3 0, 1, 0 0.3 3 5 6, 5, 3, 5, 4 4.6 4. . . . . . . . . . . . n

Table 3 shows information stored in a data structure with ground station2 updated from Table 2. Here, ground station 2 has transmitted moremessages than it did in Table 2, as a new message with signal strength 2dB has been received. Now ground station 2 has message traffic densityof five and average signal strength of 0.8 dB. The aerial vehicle mayhave received a message with greater signal strength from ground station2 for a number of reasons, such as perhaps the aerial vehicle isapproaching ground station 2, or decreasing in latitude, or groundstation 2 is now within line-of-sight.

TABLE 3 MESSAGE SIGNAL GROUND TRAFFIC STRENGTH STATION DENSITY DATA (dB)AVERAGE (dB) 1 4 1, 1, 2, 2 1.5 2 5 0, 1, 0, 1, 2 0.8 3 5 6, 5, 3, 5, 44.6 4 . . . . . . . . . . . . n

Table 4 show information stored in a data structure with ground stations3 and 4 updated from Table 3. Here, the aerial vehicle has received amessage from ground station 4 for the first time within the predefinedtime period, i.e. within the last ten minutes. In one embodiment, thisdata piece would remain in the data structure until ten minutes from itsreception has elapsed.

TABLE 4 MESSAGE SIGNAL GROUND TRAFFIC STRENGTH AVERAGE STATION DENSITYDATA (dB) (dB) 1 4 1, 1, 2, 2 1.5 2 5 0, 1, 0, 1, 2 0.8 3 6 6, 5, 3, 5,4, 0 3.8 4 1 1 1   . . . . . . . . . . . . n

In Table 4, the aerial vehicle has also received a new message fromground station 3, this with such low signal strength that it may beconsidered of zero signal strength. This new message reduces the averagesignal strength of ground station 3 from 4.6 dB to 3.8 dB. With groundstation selection logic that only considers the previous receivedmessage's signal strength, had the aerial vehicle been in communicationwith ground station 3 at the time the zero signal strength messagearrived, the ground station selection logic would have initiated ahandover. But as is often the case, this zero signal strength messagemay be an aberration in the data, perhaps due to the aerial vehiclebriefly flying past a tall building or banking In aspects of theinvention, ground station selection logic would not trigger a handoff toanother ground station because ground station 3 still has the highestaverage signal strength.

The present invention may be embodied in other specific forms withoutdeparting from its essential characteristics. The described embodimentsare to be considered in all respects only as illustrative and notrestrictive. The scope of the invention is therefore indicated by theappended claims rather than by the foregoing description. All changesthat come within the meaning and range of equivalency of the claims areto be embraced within their scope.

1. A method for selecting a ground station for communication with anaerial vehicle, the method comprising: receiving at an aerial vehicleone or more messages from one or more ground stations; storing one ormore signal strength values corresponding to the one or more receivedmessages in a data structure for each respective one or more groundstations received during a predefined time period; updating the datastructure for each of the one or more ground stations; calculating anaverage of the signal strength values stored in each data structure todetermine an average signal strength; comparing the average signalstrength of each of the one or more ground stations; and selecting whichground station the aerial vehicle is to communicate with based onpredefined criteria.
 2. The method of claim 1, wherein updating the datastructure for each of the ground stations comprises at least one of:deleting any signal strength value older than a predetermined timeperiod; and deleting the oldest signal strength value stored in a datastructure when that data structure stores a new signal strength value.3. The method of claim 1, wherein selecting which ground station theaerial vehicle is to communicate with based on predefined criteriafurther comprises: determining a signal strength threshold value;comparing the largest average signal strength with the currentlyselected ground station's average signal strength; and switching to aground station with the largest average signal strength only if thedifference between the largest average signal strength and a currentlyselected ground station's average signal strength exceeds the signalstrength threshold value.
 4. The method of claim 1, wherein selectingwhich ground station the aerial vehicle is to communicate with based onpredefined criteria further comprises: selecting the ground station withthe largest average signal strength.
 5. The method of claim 1, furthercomprising: adjusting the number of signal strength values stored in thedata structures based on comparing the message traffic density for eachof the one or more ground stations with a message traffic density level.6. The method of claim 5, wherein adjusting the number of signalstrength values further comprises: storing more signal strength valuesin the data structure corresponding to the one or more ground stationswhen the message traffic density between the aerial vehicle and theground station is higher than the message traffic density level; andstoring less signal strength values in the data structure correspondingto the one or more ground stations when the message traffic densitybetween the aerial vehicle and the ground station is lower than themessage traffic density level.
 7. The method of claim 1, whereincalculating an average of the signal strength values stored in each datastructure to determine an average signal strength further comprises:weighting the average in favor of more recently stored signal strengthvalues.
 8. A communication system for an aerial vehicle, comprising: aradio in the aerial vehicle to receive communication signals from one ormore ground stations and to transmit to a selected ground station; and amanagement unit coupled to the radio and operable to: store one or moresignal strength values corresponding to the one or more receivedmessages in a data structure for each respective one or more groundstations received during a predefined time period; update the datastructure for each of the one or more ground stations; calculate anaverage of the signal strength values stored in each data structure todetermine an average signal strength; compare the average signalstrength of each of the one or more ground stations; and select whichground station the radio is to communicate with based on predefinedcriteria.
 9. The communication system of claim 8, wherein the update ofthe data structure for each of the one or more ground stations furthercomprises at least one of: delete any signal strength value older than apredefined time period; delete the oldest signal strength value storedin the data structure when that data structure stores a new signalstrength value; and adjust the number of signal strength values storedin the one or more data structures based on comparing the messagetraffic density for each of the one or more ground stations with amessage traffic density level.
 10. The communication system of claim 9,wherein the adjustment of the number of signal strength values furthercomprises: store more signal strength values in the data structurecorresponding to the one or more ground stations when the messagetraffic density between the radio and the ground station is higher thanthe message traffic density level; and store less signal strength valuesin the data structure corresponding to the one or more ground stationswhen the message traffic density between the radio and the groundstation is lower than the message traffic density level.
 11. Thecommunication system of claim 8, wherein the selection of which groundstation the radio is to communicate with based on predefined criteriacomprises: select the ground station with the largest average signalstrength.
 12. The communication system of claim 8, wherein the selectionof which ground station the radio is to communicate with based onpredefined criteria comprises: determine a signal strength thresholdvalue; compare the largest average signal strength with the selectedground station's average signal strength; and switch to a ground stationwith the largest average signal strength only if the difference betweenthe largest average signal strength and a currently selected groundstation's average signal strength exceeds the signal strength thresholdvalue.
 13. The communication system of claim 8, wherein calculate anaverage of the signal strength values stored in each data structure todetermine an average signal strength further comprises: weigh theaverage in favor of more recently stored signal strengths.
 14. Acomputer program product, comprising: a computer readable medium havinginstructions stored thereon for a method of selecting a ground station,the method comprising: storing one or more signal strength valuescorresponding to one or more received messages in a data structure foreach respective one or more ground stations received during a predefinedtime period; updating the data structure for each of the one or moreground stations; calculating an average of the signal strength valuesstored in each data structure to determine an average signal strength;comparing the average signal strength of each of the one or more groundstations; and selecting which ground station the aerial vehicle is tocommunicate with based on predefined criteria.
 15. The computer programproduct of claim 14, wherein updating the data structure for each of theone or more ground stations comprises at least one of: deleting anysignal strength older than a given time period; and deleting the oldestsignal strength stored in a data structure when that data structurestores a new signal strength.
 16. The computer program product of claim14, wherein selecting which ground station the aerial vehicle is tocommunicate with based on predefined criteria further comprises:selecting the ground station with the largest average signal strength.17. The computer program product of claim 14, wherein selecting whichground station the aerial vehicle is to communicate with based onpredefined criteria comprises: determining a signal strength thresholdvalue; comparing the largest average signal strength with a currentlyselected ground station's average signal strength; and switching to aground station with the largest average signal strength only if thedifference between the largest average signal strength and a currentlyselected ground station's average signal strength exceeds the signalstrength threshold value.
 18. The computer program product of claim 14,further comprising adjusting the number of signal strength values storedin the one or more data structures based on comparing the messagetraffic density for each of the one or more ground stations with amessage traffic density level.
 19. The computer program product of claim18, wherein adjusting the number of signal strength values stored in theone or more data structures further comprises: storing more signalstrength values in the data structure corresponding to the one or moreground stations when the message traffic density between the radio andthe ground station is higher than the message traffic density level; andstoring less signal strength values in the data structure correspondingto the one or more ground stations when the message traffic densitybetween the radio and the ground station is lower than the messagetraffic density level.
 20. The computer program product of claim 14,wherein calculating an average of the signal strength values stored ineach data structure to determine an average signal strength furthercomprises weighting the average in favor of more recently stored signalstrength values.